[レポート] ハンズオン/Liquidを使ったカスタマイズ:応用編 – Looker:JOIN 2019 at San Francisco #looker #JOINdata
現地時間2019年11月05日〜07日の期間、米国サンフランシスコで開催されているLookerの年次カンファレンスイベント『JOIN 2019』。今年2019年のイベントは、弊社から3名のメンバーが現地参戦しました。
参加レポート各種については下記シリーズをご参照ください。
当エントリでは、その中からブレイクアウトセッション『Hands-on Lab: 5 Steps to Embedding Looker(ハンズオン/Looker埋め込み分析を行う5つのステップ)』の内容について参加レポートをお届けします。
当エントリでは、その中からブレイクアウトセッション『Hands-on Lab: Looker + Liquid: Advanced Customization Techniques(ハンズオン/Liquidを使ったカスタマイズ:応用編)』の内容について参加レポートをお届けします。
目次
セッション概要
セッションの概要は以下の通りです。
・Shelley Fussman (Data Analyst / Looker)
[セッション情報]:
Hands-on Lab: Looker + Liquid: Advanced Customization Techniques
(Liquidを使ったカスタマイズ:応用編)
Thirsty for more knowledge around Looker customization? Want to create more personalized experiences? Join us for this advanced session as we dive into Liquid and explore its advanced functionality. Learn to set up interactivity based on the person logged in and answer your questions around popular use-cases, include creating dynamic links and images, custom drills, and custom conditional formatting.
(Lookerのカスタマイズに関するより多くの知識が必要ですか? よりパーソナライズされたエクスペリエンスを作成したいですか? Liquidに飛び込み、その高度な機能を探求しながら、この高度なセッションに参加してください。 ログインしているユーザーに基づいてインタラクティブ機能を設定し、一般的なユースケースに関する質問に答える方法を学びます。ダイナミックリンクと画像、カスタムドリル、カスタム条件付き書式の作成などがあります。)
セッションレポート
Liquid式とは
Liquidは、Shopifyによって作成されたオープンソースのRubyベースのテンプレート言語。LookMLと組み合わせて使用することで、より柔軟で動的なコードを構築出来る。Liquidコードは中括弧{}で示され、3つの異なるカテゴリに分類される。
- オブジェクト(Object):オブジェクト:ページ上のコンテンツを表示する場所をLiquidに伝える
- タグ(Tags):テンプレートのロジックと制御フローを作成
- フィルタ(Filter):Liquidオブジェクトの出力を変更
なぜLiquidを使うべきなのか
主な利点は以下。
- スマートなワークフローが構築出来る
- ユーザーエクスペリエンスの向上
- Lookerの可能性を最大限に引き出せる
Liquid式を使える局面としては以下の様なところがある。
- actionパラメータ
- htmlパラメータ
- label (for Fields)パラメータ
- linkパラメータ
- sqlで始まる、以下のパラメータ群
利用可能なLiquid変数の一覧については以下を参照。
利用可能なLiquidパラメータの一覧。
条件に応じた書式の変更
Liquid式で『HTML』の内容を追加することで、以下の様な装飾を施すことが可能となる。
- ディメンションラベルまたはヘッダーの背景にカスタムカラーを追加
- 表示される値の一部として画像またはアイコンを含める
- 表示されるテキストのサイズまたはフォントを変更
- ドロップダウンを介してテーブルのセルにカスタム詳細を追加
- セル値を目標と比較するテーブルのセルにプログレスバーを作成
実装例:
ディメンションの内容を装飾したもの。
htmlパラメータに適用させる事でフォントサイズ等の調整も可能。これは以前下記のエントリでも触れていました。
Liquid式を使って表示内容を切り替え・制御
Liquidで条件付きロジックを実行することも可能。if else式を使い、以下の様な記述をすることで、表示するユーザーの属性に基づいて表示内容を切り替えることが可能。
可視化内容(Vizualization)をLiquid式で装飾
最後のセクションでは、シングルバリューチャートの内容を、Liquid式を使ってリッチにしてみよう!という実践内容について解説していました。
まとめ
以上、Looker:JOIN 2019ブレイクアウトセッション『Hands-on Lab: Looker + Liquid: Advanced Customization Techniques(ハンズオン/Liquidを使ったカスタマイズ:応用編)』の参加レポートでした。
実装例を見て頂くとお分かりのように、がっつりとソースコードが設定内容の中に書き込まれています。これはつまり、『やり方、内容によってはいかようにも対応が可能』とも言えるかと思います。あまり乱用し過ぎると視認性が悪くなってしまうような気もするので注意が必要かな、とも思うのですが、この『何とかなる』度量の広さ的なところ(?)のLookerの1つの魅力と言えるのではないでしょうか。